This invention relates generally to a non-volatile memory of a computer, and more particularly to the display and recordation of changes made to such a memory.
Typically, personal computers include a special type of chip that combines a real-time clock (RTC) with at least sixty-four bytes (including the clock date) of non-volatile RAM (NVRAM) memory. This chip is often referred as the xe2x80x9cCMOS chipxe2x80x9d or xe2x80x9cCMOS RAM,xe2x80x9d since the type chip of used is typically produced using a CMOS (Complimentary Metal Oxide Semiconductor) process. CMOS design chips are known for very low power consumption, and this special RTC/NVRAM chip is designed to run off a battery for several-years.
The RTC/NVRAM chip typically includes a real-time clock. The clock permits software running on the computer to read the date and the time, and so that the date and the time will be preserved even though the system is powered off or unplugged. The NVRAM portion of the chip is designed to store the basic system configuration, including the amount of memory installed, types of floppy and hard disk drives, and other information, via a number of registers. This information can thus be read every time the computer is powered on. The chip is therefore powered by an external or integrated battery.
Most computers come with only a rudimentary program to make changes to the settings stored in the registers on the CMOS chip, however. Typically, for example, the user has to press F1 while the computer is booting to access the CMOS set-up program. Once the user has made changes to the CMOS registers, exiting the program causes the changes to be stored in the CMOS chip, such that the previous settings are erased.
Therefore, there are a number of drawbacks to the current approach to making CMOS register changes. The program does not keep track of previous changes that has been made. This means that if a mistake is made when making changes, there is no way of easily going back to previous settings. This is troublesome especially where a technician attempting to repair the machine needs to restore the CMOS registers to their original factory presets. Known prior art software only permits the recordation of past setting changes for the operating system settings, not CMOS settings.
There are other drawbacks to the current approach to making CMOS register changes. Upon start-up the program does not verify whether the CMOS registers have been inadvertently changed since the last time the program was run.
There is a need, therefore, for a CMOS settings program that keeps track of previous changes that have been made to the CMOS registers. There is a need for such a program that asks the user for confirmation prior to making the changes to the CMOS chip. Finally, there is a need for a program that verifies whether the CMOS registers have been inadvertently changed since the last time the program was run.
The present invention relates to the display and recordation of changes made to a non-volatile memory of a computer. In one embodiment of the invention, a computer comprises a central-processing unit (CPU), a storage device operatively coupled to the CPU, a non-volatile memory (NVM) operatively coupled to the storage device, and a computer program. The NVM is of any type, such as an electrically erasable programmable read-only memory (EEPROM). The NVM stores a plurality of configuration settings. The computer program is stored on the storage device and executed by the CPU, and permits changes to be made to the configuration settings and to maintain a history file of changes previously made to the configuration settings. The computer program maintains both changes initiated by the user, and those made by the operating system or other programs running on the computer.
In another embodiment of the invention, a computerized system comprises the NVM and two components, a modification component and a recordation component. The modification component permits changes to be made to the configuration settings of the NVM, while the recordation component maintains a history file of all the changes previously made to the configuration settings. In a particular embodiment, the modification component permits changing the configuration settings to one of the history file of changes, as maintained by the recordation component. In other embodiments, a confirmation component verifies that the changes to be made are correct, and an initiation component inquires whether the configuration settings should be reset to the changes most recently made upon a mismatch of the configuration settings with the changes most recently made.
In this manner, the present invention provides for a number of advantages. The program of the present invention keeps track of previous changes that have been made to the NVM configuration settings. The program in one embodiment further asks the user for confirmation prior to making the changes to the NVM chip. Finally, the program verifies whether the configuration settings have been inadvertently changed since the last time the program was run, before permitting other changes to be made.
Other embodiments of the invention include a computer-readable storage medium storing a computer program including means for changing a plurality of configuration settings and means for maintaining a history file of changes, and also a method for maintaining a plurality of configuration settings stored on a NVM of a computer. Still other and further aspects, advantages, and embodiments of the present invention will become apparent in the following description, and by referencing to the drawings.